
在 React 中,列表渲染是一種常見的操作,用於將資料列表渲染為頁面上的元素,這在頁面中是十分常見的一種形式。

這邊有一個 people 的陣列,其中包含了三個物件,每個物件都有 id、name 和 age 屬性:
const people = [
{
id: 0,
name: '張三',
age: 24
},
{
id: 1,
name: '李四',
age: 31
},
{
id: 2,
name: '陳五',
age: 42
}
];
在 React 中,當我們需要在 JSX 中使用 JavaScript 時,需要使用大括號 {} 進入 JavaScript 模式,以下是如何使用 map() 函式來渲染 people 陣列的範例:
function List() {
return (
<ul>
// 使用大括號 {} 進入 JavaScript 模式
{
people.map((person) => (
<li key={person.id}>{person.name} 今年 {person.age} 歲</li>
))
}
</ul>
);
}
在這個範例中,我們遍歷 people 陣列,為每筆資料創建一個 <li> 元素。
請注意,我們在每個 <li> 元素上都使用了 key 屬性,key 屬性在 React 列表渲染中十分重要,並且該屬性的值必須是唯一的,通常會使用資料的唯一 ID 作為 key。
const people = [
{
id: 0,
name: '張三',
age: 24
},
{
id: 1,
name: '李四',
age: 31
}
{
id: 2,
name: '陳五',
age: 42
}
];
假如我們希望過濾出 age > 30 的人,可以先使用陣列的 filter 方法進行資料的處理,最後再用這筆過濾的資料去進行列表渲染。
function List() {
const filteredPeople = people.filter((person) => person.age > 30);
return (
<ul>
{
filteredPeople.map((person) => (
<li key={person.id}>{person.name} 今年 {person.age} 歲</li>
))
}
</ul>
);
}
React 中的列表渲染是一個在網頁開發中常見且重要的技巧,透過 map 或 filter 函式,我們能夠輕鬆處理資料陣列,並將其渲染為頁面上的元素。
我們也了解到在列表渲染過程中,key 屬性的重要性,該屬性的值必須是唯一的,通常會使用資料的唯一 ID 做為 key。